home *** CD-ROM | disk | FTP | other *** search
/ User's Choice Windows CD / User's Choice Windows CD (CMS Software)(1993).iso / win_i_l / incx101b.zip / INC-PROG.LZH / HELP.LZH / MCC.HLP < prev    next >
Text File  |  1991-02-28  |  15KB  |  243 lines

  1. mcc
  2.  Help information about: Classes
  3.  ^WhyFilenameExtension
  4.  
  5.               E╔════════════════════════════════════════════════╗
  6.               E║                    CClassesE                     ║
  7.               E╚════════════════════════════════════════════════╝
  8.  
  9.  
  10.  CWhat Are Classes?
  11.  
  12.    In MS-DOS, files are given names like "autoexec.bat".  The characters
  13.    after the period (in this case, "bat") identify the kind of file it is.
  14.    InContext uses this filename extension to indicate the CclassB of an
  15.  ZmccwB  object (CJ Why? CB).  Thus, an ordinary text file might be of class "txt",
  16.    while a Lotus 1-2-3 spreadsheet might be of class "wk1".
  17.  
  18.    Incidentally, InContext also has to have some way of showing you files
  19.    which have no filename extension.  These files are displayed using the
  20.    Greek letter Phi ("CφB", often used to mean "empty" or "nothing").  Thus a
  21.    file named simply "temp" would be displayed by InContext as "temp.φ".
  22.  
  23.  CClasses and Actions
  24.  
  25.    InContext allows the user to define the CactionsB of a class.  One reason 
  26.    for doing this is to cause standard actions to behave differently (and
  27.    appropriately) for different classes.  For example, Lotus 1-2-3 is an
  28.    appropriate tool with which to "edit" a spreadsheet, but not a text
  29.    object.  A second reason is to add operations especially applicable to
  30.    the class (e.g., "compile" a C program, or "show" a "pcx" PC-Paintbrush
  31.    image).
  32.  
  33.    If you have not installed or created a definition of a particular class,
  34.    then only the default actions are available for that class.  These actions,
  35.    too, are under your control, and you can redefine them (for more
  36.  ZmcaeB  information about this, see CJ Action Definition Editing CB).  A typical
  37.    set of default actions might include "view", "copy", "rename", and
  38.    "delete".  These actions apply to undefined classes, and do not vary from
  39.    class to class.
  40.  
  41.    While the default actions might be good enough for some purposes, the
  42.    way to get real power with InContext is to define specialized behavior
  43.    for different object classes.  The figure below shows, by way of example,
  44.    sample action lists for two classes.
  45.  
  46.                  E▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  47.                  E█A                                          A  E█
  48.                  E█A    Class:      document      makefile    A  E█
  49.                  E█A                ("doc")       ("mk")      A  E█
  50.                  E█A                                          A  E█
  51.                  E█A    Actions:    edit          edit        A  E█
  52.                  E█A                view          view        A  E█
  53.                  E█A                copy          copy        A  E█
  54.                  E█A                rename        rename      A  E█
  55.                  E█A                delete        delete      A  E█
  56.                  E█A                spellchk      make_pkg    A  E█
  57.                  E█A                preview       inst_pkg    A  E█
  58.                  E█A                print         test_pkg    A  E█
  59.                  E█A                archive       arch_pkg    A  E█
  60.                  E█A                              printpkg    A  E█
  61.                  E█A                              cleanpkg    A  E█
  62.                  E█A                                          A  E█
  63.                  E▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  64.  
  65.    The "doc" (document) class has some of the ordinary operations you might
  66.    think of in connection with a text document.  For example, you can edit
  67.    it, check its spelling, preview how it will look when printed, and save
  68.    it in an archive.  The "mk" (makefile) class is a kind of object that
  69.    describes a software package being developed.  This class has several
  70.    actions in common with the document class, such as view, edit, and delete.
  71.    However, it also has specialized operations, such as "make the package",
  72.    "install the package", etc.  While these actions are listed above by their
  73.    short names, intended to fit in limited space, they also have longer
  74.    descriptive names by which you can recognize them in actual use.
  75.  
  76.  CFocussing By Use of the Class Command
  77.  
  78.    Although the user can reconfigure InContext to behave differently, 
  79.    the Main Display normally shows several lists, one of which is a list 
  80.    of objects in the current directory. For example, the display below 
  81.    shows such objects as "afhsmin.doc" and "lwv.arc". 
  82.  
  83.              E▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  84.              E█A                                               A  E█
  85.              E█A  E│B                                            A  E█
  86.              E█A  E│B  EViewsB   EClassB    EObjectsB                  A  E█
  87.              E█A  E│B CALL     B  CALLB  document.arc    pubmin.doc  A  E█
  88.              E█A  E│B archive   arc       lwv.arc    recrep.doc  A  E█
  89.              E█A  E│B chess     doc   admnnot.doc  recycedp.doc  A  E█
  90.              E█A  E│B document  fmt  C afhsmin.docB  recycg&o.doc  A  E█
  91.              E█A  E│B execable  lis   afhsnot.doc  recyclan.doc  A  E█
  92.              E█A  E│B finance   lYBtr    bksale.doc  recycli1.doc  A  E█
  93.              E█A  E│B fonts     lyr    edcord.doc  recyclis.doc  A  E█
  94.              E█A  E│B graphic   rec   lwvbylw.doc  recycmin.doc  A  E█
  95.              E█A  E│B incontxt  zip  ordattle.doc  recycmtg.doc  A  E█
  96.              E█A  E│B letters         ordedc1.doc  recycoor.doc  A  E█
  97.              E█A  E│B messages       ordlegno.doc    recyst.doc  A  E█
  98.              E█A  E│B program          ordmin.doc    resume.doc  A  E█
  99.              E█A  E│B tapcis           ordnot.doc   votergd.doc  A  E█
  100.              E█A  E│B ventura         ordpub1.doc   afhsnot.fmt  A  E█
  101.              E█A  E│B xref            ordpub2.doc      help.lis  A  E█
  102.              E█A  E│B                ordrenot.doc  lwvlabel.lis  A  E█
  103.              E█A  E│B                 ordreop.doc      temp.lis  A  E█
  104.              E█A  E│B                 pubhear.doc  votrguid.lis  A  E█
  105.              E█A  E└─ User: H. Rudy Ramsey ──────────────────── A  E█
  106.              E█A                                               A  E█
  107.              E▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  108.  
  109.    They are identifiable as objects because they appear under the label, 
  110.    "EObjectsB".  However, this display is currently showing objects 
  111.    of all types, so they're all mixed in together.  Furthermore, not all 
  112.    objects are shown, since there are too many to fit in the objects 
  113.    area of the display.  One way to deal with this is to select the
  114.  ZmcoB  CJ Object Command CB, in order to pop up a window dedicated entirely
  115.    to objects.  A second way to deal with this is to focus on a smaller set
  116.  ZmcvB  of objects, either by CJ view CB or by CclassB.
  117.    
  118.    The two columns to the left, "EViewsB" and "EClassB", are your means
  119.    of focussing on larger or smaller sets of objects.  As you can see by the
  120.    highlight of the word "CALLB", ALL views and ALL object classes in the
  121.    directory are being displayed.  If you want to focus on only a small set
  122.    of the objects, one way of doing so is to select a single class.  For
  123.    example, placing the cursor on the "ltr" class, as shown above, and
  124.    pressing ENTER or the left mouse button will produce a main display that
  125.    looks like the following.
  126.  
  127.              E▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  128.              E█A                                               A  E█
  129.              E█A  E│B                                            A  E█
  130.              E█A  E│B  EViewsB   EClassB    EObjectsB                  A  E█
  131.              E█A  E│B CALL     B  ALL       bee.ltr                A  E█
  132.              E█A  E│B archive   arc   monxmas.ltr                A  E█
  133.              E█A  E│B chess     doc                              A  E█
  134.              E█A  E│B document  fmt                              A  E█
  135.              E█A  E│B execable  lis                              A  E█
  136.              E█A  E│B finance   ClYCtrB                              A  E█
  137.              E█A  E│B fonts     lyr                              A  E█
  138.              E█A  E│B graphic   rec                              A  E█
  139.              E█A  E│B incontxt  zip                              A  E█
  140.              E█A  E│B letters                                    A  E█
  141.              E█A  E│B messages                                   A  E█
  142.              E█A  E│B program                                    A  E█
  143.              E█A  E│B tapcis                                     A  E█
  144.              E█A  E│B ventura                                    A  E█
  145.              E█A  E│B xref                                       A  E█
  146.              E█A  E│B                                            A  E█
  147.              E█A  E│B                                            A  E█
  148.              E█A  E│B                                            A  E█
  149.              E█A  E└─ InContext Work Environment Manager ────── A  E█
  150.              E█A                                               A  E█
  151.              E▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  152.  
  153.    As you can see from the highlighting of the word "CltrB" under EClassB, only
  154.    objects of class "ltr" are now being displayed.  This is one way of
  155.    rapidly focussing in on a small set of objects.  There are at least two
  156.    reasons you might want to do this:
  157.  
  158.         CB It makes it much easier and quicker to find the single object
  159.           you're actually looking for.
  160.  
  161.         CB Many programs are equipped to operate on multiple files, and
  162.           InContext allows you to apply such programs to a whole group of
  163.           objects.  For example, if you use an editor (such as Brief) that
  164.           can edit multiple files, you can pick a class and invoke the editor
  165.           on all the objects of that class in a single action.
  166.  
  167.  CUsing the Class Command and Its Display
  168.  
  169.    If the information shown in the main display is not enough for you to
  170.    select the appropriate class, you can use the CClassB command.  It
  171.    produces a display which gives you more information about the object
  172.    classes C(not yet implemented)B, and lets you select the desired one.
  173.    An example of this display is shown below.
  174.  
  175.         E▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  176.         E█A                                                         A  E█
  177.         E█A  Cmsey Personal Center -- alice                     B1/25/A  E█
  178.         E█A  Eew:B CALL     B  EClass:B CltrB   EObject:B C            B   ETask:A  E█
  179.         E█A  C            G  Class  C                                  A  E█
  180.         E█A  B  G                                          FªHDelpG  B    A  E█
  181.         E█A  Eur│B                                               E│A  B ESA  E█
  182.         E█A  E..│B EClassB                                         E│A  BcoA  E█
  183.         E█A  E..│B  ALL                                          E│At B  A  E█
  184.         E█A  E..│B  arc                                          E│A  B  A  E█
  185.         E█A  E..│B  doc                                          E│A  B  A  E█
  186.         E█A  E..│B  fmt                                          E│A  B  A  E█
  187.         E█A  E..│B  lis                                          E│A  B  A  E█
  188.         E█A  E..│B  lYBtr                                          E│Ag B  A  E█
  189.         E█A  E..│B  lyr                                          E│A  B  A  E█
  190.         E█A  Ehh│B  rec                                          E│A  B  A  E█
  191.         E█A  EwCwE│B  zip                                          E│A  B  A  E█
  192.         E█A  CwwE│B                                               E│Al B  A  E█
  193.         E█A                                                         A  E█
  194.         E▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  195. mccw
  196.  Help information about: Why Use Filename Extension to Identify Class?
  197.  
  198.  
  199.               E╔════════════════════════════════════════════════╗
  200.               E║  CWhy Use Filename Extension to Identify Class?E ║
  201.               E╚════════════════════════════════════════════════╝
  202.  
  203.  
  204.    You will notice that InContext requires that you identify object classes,
  205.    and therefore object behavior, through the consistent use of MS-DOS
  206.    Cfilename extensionsB.  You may be aware of other programs, such as
  207.    Lotus' Magellan, that identify object types without relying on filename
  208.    extensions.  Those programs read a portion of the file and do pattern-
  209.    matching, to calculate the probabilities that the file is of one type or
  210.    another.  That is, arguably, a convenience for the user, but it can't
  211.    give you the power that InContext provides, for two reasons:
  212.  
  213.         CB Identifying object types by pattern-matching is imprecise, and
  214.           results in frequent errors.  Those errors don't matter much if all
  215.           you can do with the object is view it, since viewing cannot change
  216.           the contents of the file.  InContext allows you to perform many
  217.           operations that CdoB change the file content, and it cannot rely
  218.           on such imprecise algorithms.
  219.  
  220.         CB You may wish to have multiple object classes that have the same
  221.           basic type (e.g., ASCII text, or Lotus 1-2-3 spreadsheets), but
  222.           have differing purposes and possible operations.  Identification of
  223.           the file type by pattern-matching would prevent you from doing so.
  224.  
  225.    Magellan is a fine product, and no criticism is intended (we use it
  226.    ourselves, for information searching).  To gain the kind of operational
  227.    power provided by InContext, though, it is necessary that you be explicit
  228.    about object class names.
  229.  
  230.    Another approach to this problem, frequently seen in graphical
  231.    environments like Windows and GEM, is to allow Conly a single application
  232.    to be associated with an object class.  This is rather constraining.  With
  233.    such an assumption, the functionality readily available for any object
  234.    class is CexactlyB that provided by its principal application.  If your
  235.    word processor doesn't do spelling checking, for example, there is no
  236.    ready mechanism for allowing you to invoke a CseparateB spelling checker
  237.    on a document.
  238.  
  239.    The principal goal of InContext is to allow you to construct a smoothly
  240.    functioning, integrated work environment.  We believe the approach we've
  241.    taken gives more power than either of these others, and is particularly
  242.    appropriate under MS-DOS.
  243.